#ifndef CAMPAIGNMODEL_H
#define CAMPAIGNMODEL_H


#include "models_global.h"
#include "AbstractD20Model.h"


class MODELSSHARED_EXPORT CampaignModel : public AbstractD20Model
{
    Q_OBJECT

public:

    enum Group
    {
        Group_FIRST = 0,

        AttributeGroup = Group_FIRST,
        SkillGroup,
        FeatGroup,
        SpecialGroup,
        BonusGroup,
        BonusLevelGroup,

        Group_LAST = BonusLevelGroup
    };


    CampaignModel(QObject *parent = 0);

    virtual void initialize();

#if 0
    static QString groupName(const int& group);
    static int group(const QString& name);

    virtual void setRootItem(AbstractItem* root);

    QModelIndex groupIndex(const int& group) const;

    int addItem(const int& group, const QString& name);
    QModelIndexList itemIndexes(const int& group) const;


    virtual Qt::ItemFlags flags(const QModelIndex &index) const;


#endif
};

#endif // CAMPAIGNMODEL_H
